/**
*@file StringSet.cpp
*@author ivenma
*@date 2012-10-31
*@version 1.0
*@brief 
*
*	
*/


#include "StringSet.h"

#include <stdlib.h>

const int MAX_KEY_LENGTH = 128;


CStringSet::CStringSet()
{
	m_bBegin = false;
	m_strSign = "&";
}

void CStringSet::Init()
{
	m_bBegin = false;
	m_strSign = "&";
}

void CStringSet::SetSign(char *pszSign)
{
	m_strSign = pszSign;
}

void CStringSet::Set(const char* pszName, const char* pszFormat
	, const char* pszValue)
{
	if (m_bBegin)
	{
		m_strData += m_strSign;
	}

	m_strData += pszName;
	m_strData += pszFormat;
	m_strData += pszValue;

	m_bBegin = true;
}

void CStringSet::Set(const char* pszName, const char* pszFormat
	, unsigned long long ullValue)
{
	char szTemp[21] = {0};
	sprintf(szTemp, "%llu", ullValue);

	if (m_bBegin)
	{
		m_strData += m_strSign;
	}

	m_strData += pszName;
	m_strData += pszFormat;
	m_strData += szTemp;

	m_bBegin = true;
}

void CStringSet::Set(const char* pszName, const char* pszFormat
	, unsigned int uiValue)
{
	char szTemp[11] = {0};
	sprintf(szTemp, "%u", uiValue);

	if (m_bBegin)
	{
		m_strData += m_strSign;
	}

	m_strData += pszName;
	m_strData += pszFormat;
	m_strData += szTemp;

	m_bBegin = true;
}

void CStringSet::Set(const char* pszName, const char* pszFormat, int iValue)
{
	char szTemp[11] = {0};
	sprintf(szTemp, "%d", iValue);

	if (m_bBegin)
	{
		m_strData += m_strSign;
	}

	m_strData += pszName;
	m_strData += pszFormat;
	m_strData += szTemp;

	m_bBegin = true;
}

void CStringSet::SetEnd()
{
	m_strData += "\n";
}

